package queries;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import javax.swing.JOptionPane;

/*Clase para conectarse con una base de datos SQL*/

public class ConnectionJDBC
{
    Connection connection;//Objeto del tipo conexion
    
    /*Constructor*/
    public ConnectionJDBC()
    {        
        try
        {
             Class.forName("com.mysql.jdbc.Driver");
             connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/pasteleria", "root", "12345");         
             System.out.println("Se conecto a la base de datos");
        }

        catch(ClassNotFoundException cnfe)
        {
            int value = JOptionPane.showConfirmDialog(null, "No se puede encontrar la clase sqlDriver","Error", JOptionPane.DEFAULT_OPTION,JOptionPane.ERROR_MESSAGE ); 
            if (value==JOptionPane.YES_OPTION  ||  value==JOptionPane.CLOSED_OPTION  )
            {
                    System.exit(0);
            }
        }
        catch(SQLException sqle)
        {
            int value = JOptionPane.showConfirmDialog(null, "No se puede conectar a la base de datos", 
                            "Error", JOptionPane.DEFAULT_OPTION,
                            JOptionPane.ERROR_MESSAGE ); 
            if (value==JOptionPane.YES_OPTION  ||  value==JOptionPane.CLOSED_OPTION  )
            {
                    System.exit(0);
            }
        }
    }

    /*Metodo que retorna la conexion a la base de datos construida*/
   
    public Connection getConexion (  )
    {
            return this.connection;
    }

    /*Metodo que se encarga de cerrar la conexion creada*/
    
    public void cerrarConexion (  )
    {
            try
            {
                    connection.close();
            }
            catch(SQLException sqle)
            {
                    int value = JOptionPane.showConfirmDialog(null, "No se puede cerrar la conexion a la BD", 
                                    "Error", JOptionPane.DEFAULT_OPTION,
                                    JOptionPane.ERROR_MESSAGE ); 
                    if (value==JOptionPane.YES_OPTION  ||  value==JOptionPane.CLOSED_OPTION  )
                    {
                            System.exit(0);
                    }
            }
    }
}